//引入CountUI组件
import CountUI from '../../components/Count'

import {createIncrementAction,createDecrementAction,createIncrementAsyncAction} from '../../redux/count_action'

//引入connect连接CountUi组件和redux
import {connect} from 'react-redux'



// 写法1：

// // mapStateToProps函数返回一个对象，返回对象中的key作为传递给UI组件的props中的key，value作为传递给UI组件的props中的value。mapStateToProps函数用于传递状态
//
// function mapStateToProps(state){
//     return{
//         count:state
//     }
// }
//
// // mapDispatchToProps函数返回一个对象，返回对象中的key作为传递给UI组件的props中的key，value作为传递给UI组件的props中的value。mapStateToProps函数用于传递操作状态的方法
// function mapDispatchToProps(dispatch){
//
//     return{
//         increment:(data)=>{
//             dispatch(createIncrementAction(data))
//         },
//         decrement:(data)=>{
//             dispatch(createDecrementAction(data))
//         },
//         incrementAsync:(data,time)=>{
//             dispatch(createIncrementAsyncAction(data,time))
//         }
//
//     }
// }
//
//
// export default connect(mapStateToProps,mapDispatchToProps)(CountUI)

//写法2：

// mapStateToProps,mapDispatchToProps可以直接写在connect里面,而且mapDispatchToProps可以写成一个对象
export default connect(
    state=>{
    return{count:state}
},
    {
        increment:createIncrementAction,
        decrement:createDecrementAction,
        incrementAsync:createIncrementAsyncAction
    }
)(CountUI)
